package com.langll.ai.stock.service;

import com.langll.ai.base.service.IBaseService;
import com.langll.ai.stock.model.StockDailyData;

import java.time.LocalDate;
import java.util.List;

/**
 * <p>
 * 股票日线数据 服务接口
 * </p>
 *
 * @author langll
 * @since 2025-04-21
 */
public interface IStockDailyDataService extends IBaseService<StockDailyData> {

    /**
     * 根据股票代码和日期范围查询日线数据
     *
     * @param stockCode 股票代码
     * @param startDate 开始日期
     * @param endDate   结束日期
     * @return 日线数据列表
     */
    List<StockDailyData> getStockDataByDateRange(String stockCode, LocalDate startDate, LocalDate endDate);
    
    /**
     * 批量保存股票日线数据
     *
     * @param stockDailyDataList 股票日线数据列表
     * @return 保存成功的记录数
     */
    int batchSave(List<StockDailyData> stockDailyDataList);
    
    /**
     * 根据股票代码获取最新的日线数据
     *
     * @param stockCode 股票代码
     * @return 最新的日线数据
     */
    StockDailyData getLatestStockData(String stockCode);
}